package com.buss.group.entity;

import java.math.BigDecimal;
import java.util.Date;
import java.lang.String;
import java.lang.Double;
import java.lang.Integer;
import java.math.BigDecimal;

import javax.xml.soap.Text;

import java.sql.Blob;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.SequenceGenerator;

import org.jeecgframework.poi.excel.annotation.Excel;

/**   
 * @Title: Entity
 * @Description: 群组信息表
 * @author onlineGenerator
 * @date 2016-09-02 17:05:17
 * @version V1.0   
 *
 */
@Entity
@Table(name = "bns_group", schema = "")
@SuppressWarnings("serial")
public class BnsGroupEntity implements java.io.Serializable {
	/**主键*/
	private java.lang.String id;
	/**创建人名称*/
	private java.lang.String createName;
	/**创建人登录名称*/
	private java.lang.String createBy;
	/**创建日期*/
	private java.util.Date createDate;
	/**更新人名称*/
	private java.lang.String updateName;
	/**更新人登录名称*/
	private java.lang.String updateBy;
	/**更新日期*/
	private java.util.Date updateDate;
	/**所属部门*/
	private java.lang.String sysOrgCode;
	/**所属公司*/
	private java.lang.String sysCompanyCode;
	/**群组头像*/
	@Excel(name="群组头像")
	private java.lang.String groupHeaderimg;
	/**群组BANNER*/
	@Excel(name="群组BANNER")
	private java.lang.String groupBanner;
	/**群组名称*/
	@Excel(name="群组名称")
	private java.lang.String groupName;
	/**是否推荐*/
	@Excel(name="是否推荐")
	private java.lang.Integer isRecommend;
	/**群组简介*/
	@Excel(name="群组简介")
	private java.lang.String groupMemo;
	/**帖子数量*/
	@Excel(name="帖子数量")
	private java.lang.Integer articleAccount;
	/**成员数量*/
	@Excel(name="成员数量")
	private java.lang.Integer memberAccount;
	/**群组积分*/
	@Excel(name="群组积分")
	private java.lang.Integer groupIntegral;
	/**群主*/
	@Excel(name="群主")
	private java.lang.String groupLeader;
	
	private java.lang.String groupLeaderId;
	/**加入方式*/
	@Excel(name="加入方式")
	private java.lang.Integer addType;
	/**阅读方式*/
	@Excel(name="阅读方式")
	private java.lang.Integer viewType;
	/**群组分类*/
	@Excel(name="群组分类")
	private java.lang.String groupClassId; 
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=36)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人名称
	 */
	@Column(name ="CREATE_NAME",nullable=true,length=50)
	public java.lang.String getCreateName(){
		return this.createName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人名称
	 */
	public void setCreateName(java.lang.String createName){
		this.createName = createName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人登录名称
	 */
	@Column(name ="CREATE_BY",nullable=true,length=50)
	public java.lang.String getCreateBy(){
		return this.createBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人登录名称
	 */
	public void setCreateBy(java.lang.String createBy){
		this.createBy = createBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  创建日期
	 */
	@Column(name ="CREATE_DATE",nullable=true,length=20)
	public java.util.Date getCreateDate(){
		return this.createDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  创建日期
	 */
	public void setCreateDate(java.util.Date createDate){
		this.createDate = createDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人名称
	 */
	@Column(name ="UPDATE_NAME",nullable=true,length=50)
	public java.lang.String getUpdateName(){
		return this.updateName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人名称
	 */
	public void setUpdateName(java.lang.String updateName){
		this.updateName = updateName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人登录名称
	 */
	@Column(name ="UPDATE_BY",nullable=true,length=50)
	public java.lang.String getUpdateBy(){
		return this.updateBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人登录名称
	 */
	public void setUpdateBy(java.lang.String updateBy){
		this.updateBy = updateBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  更新日期
	 */
	@Column(name ="UPDATE_DATE",nullable=true,length=20)
	public java.util.Date getUpdateDate(){
		return this.updateDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  更新日期
	 */
	public void setUpdateDate(java.util.Date updateDate){
		this.updateDate = updateDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  所属部门
	 */
	@Column(name ="SYS_ORG_CODE",nullable=true,length=50)
	public java.lang.String getSysOrgCode(){
		return this.sysOrgCode;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  所属部门
	 */
	public void setSysOrgCode(java.lang.String sysOrgCode){
		this.sysOrgCode = sysOrgCode;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  所属公司
	 */
	@Column(name ="SYS_COMPANY_CODE",nullable=true,length=50)
	public java.lang.String getSysCompanyCode(){
		return this.sysCompanyCode;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  所属公司
	 */
	public void setSysCompanyCode(java.lang.String sysCompanyCode){
		this.sysCompanyCode = sysCompanyCode;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  群组名称
	 */
	@Column(name ="GROUP_NAME",nullable=true,length=50)
	public java.lang.String getGroupName(){
		return this.groupName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  群组名称
	 */
	public void setGroupName(java.lang.String groupName){
		this.groupName = groupName;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  是否推荐
	 */
	@Column(name ="IS_RECOMMEND",nullable=true,length=1)
	public java.lang.Integer getIsRecommend(){
		return this.isRecommend;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  是否推荐
	 */
	public void setIsRecommend(java.lang.Integer isRecommend){
		this.isRecommend = isRecommend;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  群组简介
	 */
	@Column(name ="GROUP_MEMO",nullable=true,length=1000)
	public java.lang.String getGroupMemo(){
		return this.groupMemo;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  群组简介
	 */
	public void setGroupMemo(java.lang.String groupMemo){
		this.groupMemo = groupMemo;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  帖子数量
	 */
	@Column(name ="ARTICLE_ACCOUNT",nullable=true,length=10)
	public java.lang.Integer getArticleAccount(){
		return this.articleAccount;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  帖子数量
	 */
	public void setArticleAccount(java.lang.Integer articleAccount){
		this.articleAccount = articleAccount;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  成员数量
	 */
	@Column(name ="MEMBER_ACCOUNT",nullable=true,length=10)
	public java.lang.Integer getMemberAccount(){
		return this.memberAccount;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  成员数量
	 */
	public void setMemberAccount(java.lang.Integer memberAccount){
		this.memberAccount = memberAccount;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  群组积分
	 */
	@Column(name ="GROUP_INTEGRAL",nullable=true,length=10)
	public java.lang.Integer getGroupIntegral(){
		return this.groupIntegral;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  群组积分
	 */
	public void setGroupIntegral(java.lang.Integer groupIntegral){
		this.groupIntegral = groupIntegral;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  群主
	 */
	@Column(name ="GROUP_LEADER",nullable=true,length=500)
	public java.lang.String getGroupLeader(){
		return this.groupLeader;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  群主
	 */
	public void setGroupLeader(java.lang.String groupLeader){
		this.groupLeader = groupLeader;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  加入方式
	 */
	@Column(name ="ADD_TYPE",nullable=true,length=2)
	public java.lang.Integer getAddType(){
		return this.addType;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  加入方式
	 */
	public void setAddType(java.lang.Integer addType){
		this.addType = addType;
	}
	/**
	 *方法: 取得java.lang.Integer
	 *@return: java.lang.Integer  阅读方式
	 */
	@Column(name ="VIEW_TYPE",nullable=true,length=2)
	public java.lang.Integer getViewType(){
		return this.viewType;
	}

	/**
	 *方法: 设置java.lang.Integer
	 *@param: java.lang.Integer  阅读方式
	 */
	public void setViewType(java.lang.Integer viewType){
		this.viewType = viewType;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  群组分类
	 */
	@Column(name ="GROUP_CLASS_ID",nullable=true,length=36)
	public java.lang.String getGroupClassId(){
		return this.groupClassId;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  群组分类
	 */
	public void setGroupClassId(java.lang.String groupClassId){
		this.groupClassId = groupClassId;
	}

	@Column(name ="GROUP_LEADER_ID",nullable=true,length=500)
	public java.lang.String getGroupLeaderId() {
		return groupLeaderId;
	}

	public void setGroupLeaderId(java.lang.String groupLeaderId) {
		this.groupLeaderId = groupLeaderId;
	}

	@Column(name ="GROUP_HEADERIMG",nullable=true,length=300)
	public java.lang.String getGroupHeaderimg() {
		return groupHeaderimg;
	}

	public void setGroupHeaderimg(java.lang.String groupHeaderimg) {
		this.groupHeaderimg = groupHeaderimg;
	}

	@Column(name ="GROUP_BANNER",nullable=true,length=300)
	public java.lang.String getGroupBanner() {
		return groupBanner;
	}

	public void setGroupBanner(java.lang.String groupBanner) {
		this.groupBanner = groupBanner;
	}
	
	

	//@OneToMany(cascade = CascadeType.ALL, mappedBy = "parent", fetch = FetchType.LAZY)
	//@OneToOne(optional =false,cascade = CascadeType.REFRESH,mappedBy="id",fetch = FetchType.EAGER) 
	
//	@OneToOne(optional = false, cascade = CascadeType.REFRESH)
//	@JoinColumn(name = "group_class_id", referencedColumnName = "id", unique = true)
//	public BnsGroupClassEntity getGroupClass() {
//		return groupClass;
//	}
//
//	public void setGroupClass(BnsGroupClassEntity groupClass) {
//		this.groupClass = groupClass;
//	}
	
	
}
